# Slot Unfolding Algorithm Trace

This document shows a trace of the algorithm for unfolding a slot-based tag space
description into a list of ordinal dimensions.

## Tags code
```
DataTags: consists of Handling, Assertions, IP.
Handling: consists of Storage, Transit.
Assertions: some of humanData, educationalRecords.
Storage: one of clear, encrypt, multiEncrypt.
Transit: one of clear, encrypt.
IP[Intellectual Property]: TODO.
```

## Trace

After stage 1:

Slot     | Type     | Content
---------|----------|---------
DataTags | Compound | Handling, Assertions, IP

After first iteration of stage 2:

Slot     | Type     | Content
---------|----------|---------
DataTags/Handling | Compound | Storage, Transit
DataTags/Assertions | Aggregate | humanData, educationalRecords

When stage 2 is over:

Slot     | Type     | Content
---------|----------|---------
DataTags/Handling/Storage | Atomic | clear, encrypt multiEncrypt
DataTags/Handling/Transit | Atomic | clear, encrypt
DataTags/Assertions | Aggregate | humanData, educationalRecords

After first iteration of stage 3:

Slot     | Type     | Content
---------|----------|---------
DataTags/Handling/Storage | Atomic | clear, encrypt multiEncrypt
DataTags/Handling/Transit | Atomic | clear, encrypt
DataTags/Assertions/humanData| Atomic | no, yes
DataTags/Assertions/educationalRecords | Atomic | no, yes

Note that as there is only a single aggregate slot in this example, stage 3 iterated only once.
